using System;
using Noea.TogSim.Model.Interfaces;

namespace Noea.TogSim.Model.Signal
{
    public abstract class Signal : ISignal
    {

        int _id;

        public Signal(int id)
        {
            _id = id;
        }

        #region ISignal Members

        public int Id { get { return _id; } }
        public abstract ISignalState State { get; set; }
        public abstract ISignal AssociatedSignal { get; set; }
        public virtual event SignalHandler OnChange;

        #endregion
    }
}
